package com.trade.module.base.vo;

import com.trade.module.base.entity.BaseEntity;
import com.trade.module.base.entity.Role;
import com.trade.module.base.entity.SystemLog;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

import java.util.Date;
import java.util.List;

/**
 * Class Description: 用户vo对象
 *
 * @Version v1.0 2017/4/22 18:01
 * @JDK version 1.8.0_51
 * @Author zfb
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = true)
public class UserVo extends BaseEntity {

    /**
     * Field description：用户名
     */
    private String account;

    /**
     * Field description：密码
     */
    private String passWord;

    /**
     * Field description：真实姓名
     */
    private String realName;

    /**
     * Field description：昵称
     */
    private String nickname;

    /**
     * Field description：用户状态（1：启用；2：禁用；0：状态无效）
     */
    private String userFlag;

    /**
     * Field description：手机号
     */
    private String phoneNum;
    /**
     * Field description：邮箱地址
     */
    private String emailAddress;

    /**
     * Field description：性别
     */
    private String sex;

    /**
     * Field description：年龄
     */
    private Integer age;

    /**
     * Field description：身份证号
     */
    private String idCard;

    /**
     * Field description：申请时间
     */
    private Date applyTime;

    /**
     * Field description：审核状态
     */
    private String auditFlag;

    /**
     * Field description：审核人ID
     */
    private String auditId;

    /**
     * Field description：审核时间
     */
    private Date auditTime;

    /**
     * Field description：（扩展）更新人名称
     */
    private String modifyUserName;
    /**
     * Field description：（扩展）审核人名称
     */
    private String auditUserName;
    /**
     * Field description：所属部门Id
     */
    private String deptId;
    /**
     * Field description：所属部门名稱
     */
    private String userDeptName;

    /**
     * 角色集合
     */
    private List<Role> allRoleList;

    /**
     * 用户拥有的角色
     */
    private List<String> userRoleList;

    /**
     * 用户日志信息
     */
    private List<SystemLog> userLogList;

    /**
     * 用户新密码
     */
    private String newPwd;
}
